package com.mark.web.data.service;

import com.mark.common.ServerResponse;
import com.mark.web.data.entity.po.Shipping;

/**
 * @Description: 收货地址模块service层接口设计
 * @Author: Mark
 * @CreateDate: 2018/3/28.
 * @Version: 2.0
 * @Copyright : 豆浆油条个人非正式工作室
 */
public interface IShippingService {
    /**
     * 新增收货地址
     * @param currentUserId：当前用户id
     * @param shipping：新增的收货地址实例
     * @return
     */
    ServerResponse addShipping(Integer currentUserId, Shipping shipping);

    /**
     * 删除收货地址
     * @param currentUserId：当前用户id
     * @param shippingId：地址id
     * @return
     */
    ServerResponse deleteShipping(Integer currentUserId, Integer shippingId);

    /**
     * 更新收货地址
     * @param currentUserId：当前用户id
     * @param shipping：待更新的实例
     * @return
     */
    ServerResponse updateShipping(Integer currentUserId, Shipping shipping);

    ServerResponse selectShipping(Integer currentUserId, Integer shippingId);

    /**
     * 获取当前用户地收货地址列表
     * @param currentUserId：当前用户id
     * @param pageNum：页数大小
     * @param pageSize：页面大小
     * @return
     */
    ServerResponse listShipping(Integer currentUserId, int pageNum, int pageSize);
}
